1. Field of the Invention
The present invention relates generally to a system for interfacing a global packet-switched computer network telephony system with a traditional telephony system and providing a variety of services to either or both networks. The system is able to both place and receive calls on the computer network such as the Internet and on a Public Switched Telephone Network (PSTN). The system is further able to handle multiple call channels and provides for scaleability without reduced performance.
2. Description of the Relevant Art
Computer networked telephony client software exists which uses the memory and central processing unit (CPU) of a personal computer (PC) to compress data received from a user in the form of voice signals and transfer the data over the computer network to a receiving computer. Such software can be used to make telephony connections over packet-switched networks such as the Internet as shown in prior art FIG. 1. An example of such a PC to PC client calling software package would be Microsoft Corporations"" Net Meeting software package.
Standard telephony hardware products make use of a Time Division Multiplexing (TDM) bus to transfer many calls over a telephony trunk or telephony bus. Computer telephony hardware may use a bus for handling call channels which runs a protocol such as the Multi-Vendor Integration Protocol (MVIP). MVIP is an open, non-proprietary family of protocol standards for manipulating telephone traffic in a computer environment. Complete information on MVIP protocols and MVIP bus information can be found in the MVIP Specification in xe2x80x9cMulti-Vendor Integration Protocol, MVIP-90 Standard Release 1.1xe2x80x9d published in 1994 and xe2x80x9cMulti-Vendor Integration Protocol, H-MVIP Standard Release 1.0xe2x80x9d published in 1995 by GO-MVIP, Inc.xe2x80x94The Global Organization for Multi-Vendor Integration Protocol, as well as in xe2x80x9cThe MVIP Bookxe2x80x94The Definitive Reference Manual for the Multi-Vendor Integration Protocolxe2x80x9d written by GO-MVIP, Inc. and published by Flatiron Publishing, Inc., ISBN #0-936648-76-7, as well as, xe2x80x9cMulti-Vendor Integration Protocol, MVIP-95 Standard Release Device Driver Standard Release 1.0xe2x80x9d, published in 1996. All of these references are incorporated herein by reference.
As shown in FIG. 1, Ethernet network interface cards (NIC""s) 14, and other network devices 15-17 can be connected to the internal bus 18 in a personal computer (PC)-based call processing computer that makes use of compression schemes in the host PC processor 11 and PC memory 12. Such a system can accept calls from one card, pass the data to PC memory 12, where the host PC processor 11 can perform manipulation of the data as needed. This data flow is shown by the PC bus 18 and arrows in FIG. 1. Some implementations utilize separate digital signal processing (DSP) cards for compression, but still pass the telephone calls"" data streams through the host computer""s memory and CPU. In all examples, the signals must pass through the host processor and/or memory of the PC at least once.
Since a computer networked telephony system, as described above, requires the use of substantial processing power and memory of the primary computer, the capacity of these implementations is limited by maximum processing power and memory requirements. Since the personal computer is usually augmented with interfaces to a computer network such as the Internet and to a traditional telephone network, software running on the host computer processor processes the data which must pass through the host processor and its main memory. Furthermore, the host processor must also encode and decode speech, convert coded speech packets for transmission over the Internet, as well as un-convert received packets into voice signals. All of this processing can result in data being batched for transmission through the host processor and memory, and limits the number of multiple channels being open at any one time. Furthermore, buffering is needed in memory during encoding and decoding which can cause delays or loss of speech data and can create a noticeable effect on the live telephone conversation between a telephony link and computer network.
In accordance with the illustrated preferred embodiment of FIG. 2, the present invention provides a method and apparatus which removes the delay and host processor bottlenecks which are present in prior art devices. In the present invention, an architecture is disclosed that supports the entire process of processing and connection of telephony networks and computer networks on attached modules that are controlled by the host computer processor, but which do not require data streams to flow through the host computer processing unit or its associated memory.
In another aspect of the present invention, modules can be added and removed from the system to provide for scalability. This is because the present invention""s architecture provides for low delay, scalable transmission of data streams independent of the host computer""s processor. More specifically, multiple entering connections from a computer network interface and a telephony interface are handled independently of the host processor and memory and are routed over an alternative bus between processing stages or boards. This provides the advantage that the burden of call processing and encoding/decoding is shifted to the present invention""s architecture of modules consisting of hardware and software connected via a separate bus.